// 数组的数据在哪里？在pinia仓库
import pinia from '@/stores';
// 从pinia仓库中获取userInfo仓库
import { useUserInfoStore } from '@/stores/userInfo';
import type { App } from 'vue';
// 实例化
const userInfoStore = useUserInfoStore(pinia);

// 实现的是模块化的封装
// export default (app:App)=>{ } 实现的是插件的封装
export default (app: App) => {
    // 在自定义插件中可以进行全局方法的定义、全局指令的定义、全局组件的定义、全局过滤器的定义
    // 实现的是指令的封装
    app.directive('has', {
        mounted(el, binding) {
            // console.log(el, binding.value);
            // console.log(userInfoStore.userInfo.buttons);

            if (!userInfoStore.userInfo.buttons.includes(binding.value)) {
                el.parentNode?.removeChild(el);
            }
        },
    });
};
